﻿using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using Unijovem.Domain;
using Unijovem.UI.Models;

namespace Unijovem.UI.Controllers
{
    public class ForumController : ControllerBase<ForumModel, Forum>
    {
        public ActionResult Participar (int id)
        {
            var model = new ForumModel().CriarViewModel(new Forum().SelectById<Forum>(id));

            var comentarios = model.ForumComentarios.OrderByDescending(d => d.Comentario.Data).Select(d =>
                    new ComentarioModel
                    {
                        Data = d.Comentario.Data,
                        Descricao = d.Comentario.Descricao,
                        Id = d.Comentario.Id,
                        IdExterno = d.IdForum,
                        IdPessoa = d.Comentario.IdPessoa,
                        Pessoa = d.Comentario.Pessoa,
                        Tipo = d.Comentario.Tipo
                    }).ToList();
            WebSession(string.Concat(SessionName.Comentarios, model.Id), comentarios);

            return View(model);
        }

        public ActionResult Visualizar (ForumModel model)
        {
            Index();
            return View(Models);
        }

        public void PreencherViewBags(int? idTema= null)
        {
            ViewBag.Temas = new Tema().SelectAllActive<Tema>().
                ToSelectList(g => g.Descricao, g => g.Id.ToString(), "Tema", idTema.ToString());
        }
    }
}
